簡單的 JS 陣列 method 整理


Posted by backas36 on 2021-11-26

有次面談中有被問到關於 JavaScript 陣列方法的回傳值,這次就來簡單複習一下吧。

會改到原陣列的方法

  • push 在陣列的尾巴加入新元素,回傳陣列的 length
  • unshift 在陣列的開頭加入新元素,回傳陣列的 length
  • pop 拿掉陣列的最後一個元素,回傳被拿掉的元素,如果是空陣列會回傳 undefined。
  • shift 移除陣列第一個元素,回傳被拿掉的元素,如果是空陣列會回傳 undefined。
  • splice 可以拿來刪除元素或加入新元素,回傳被刪除的元素陣列。
  • reverse 反轉並回傳反轉後的陣列
  • sort 對陣列所有元素做排序,並回傳此排序後的陣列
  • fill 將陣列元素改為某個靜態的值,並回傳更改後的陣列

forEach 為遍歷陣列的方法,回傳 undefined

會回傳一個新陣列的方法

map 也是會遍歷陣列所有元素一遍的方法,但是會回傳一個新的陣列。

  • filter 透過 callback,來篩選元素,回傳新陣列。
  • slice 會回傳新陣列,可以拿來拷貝陣列。
  • concat 合併一個或多個陣列,並回傳新陣列。

其他 methods

  • indexOf 給一個特定的值,回傳第一個在陣列被找到『這個值』的 index,找不到就回傳 -1
  • find 回傳第一個滿足條件的元素的值,找不到就回傳 undefined
  • findIndex 前面兩個的結合,也就是給定一個 callback,callback 為描述滿足的條件,找到就返回 index,找不到會回傳 -1
  • includes 判斷陣列是否包含特定的元素,回傳布林值。
  • join 將陣列所有元素合併成一個字串,回傳此字串
  • reduce 比較難以解釋,總之就是利用 accumulator,來反應 currentValue,並回傳單一值,這個值可以是 number, string, boolean, object, array。

#js #Array







Related Posts

How to build CICD with Jenkins as code based on container

How to build CICD with Jenkins as code based on container

JavaScript環境

JavaScript環境

Markdown 功能筆記

Markdown 功能筆記


Comments